{ "cells": [ { "cell_type": "markdown", "id": "85a9537b", "metadata": {}, "source": [ "---\n", "format:\n", " html:\n", " other-links:\n", " - text: This notebook\n", " href: L12 Newton-Cotes Quadrature.ipynb\n", "---" ] }, { "cell_type": "markdown", "id": "a772ad94", "metadata": {}, "source": [ "# Newton-Cotes Quadrature {#sec-four}" ] }, { "cell_type": "markdown", "id": "c79162dc", "metadata": {}, "source": [ "
Note. These notes are mainly a record of what we discussed and are not a substitute for attending the lectures and reading books! If anything is unclear/wrong, let me know and I will update the notes.\n", "
" ] }, { "cell_type": "code", "execution_count": 1, "id": "193b2d8d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "✓ file included! \n", "\n", "using: Plots, LaTeXStrings, Polynomials, PrettyTables \n", "\n", "Functions included: \n", " simple_iteration, \n", " Newton, \n", " orderOfConvergence, \n", " ChebyshevNodes \n", "\n", "Use @doc <> for help\n" ] } ], "source": [ "include(\"preamble.jl\")" ] }, { "cell_type": "markdown", "id": "c50cbd71", "metadata": {}, "source": [ "We wish to consider *quadrature rules* of the following form:\n", "\n", "\\begin{align}\n", " \\int_{a}^b f &\\approx \\sum_j w_j f(x_j). \n", "\\end{align}\n", "\n", "We call $\\{w_j\\}$ the *quadrature weights*, $\\{x_j\\}$ the *quadrature nodes* and $(\\{w_j\\}, \\{x_j\\})$ or $\\sum_{j} w_j f(x_j)$ a *quadrature rule*.\n", "\n", "Suppose $p$ is the polynomial of degree at most $n$ interpolating $f$ on $X = \\{x_0,\\dots,x_n \\}$: that is $p(x) = \\sum_{j=0}^n \\ell_j(x) f(x_j)$. We simply approximate the integral of $f$ by instead integrating $p$:\n", "\n", "\\begin{align}\n", " \\int_{a}^b f &\\approx \\int_a^b p = \\sum_{j=0}^n \\Big[\\int_a^b\\ell_j(x)\\mathrm{d}x \\Big] f(x_j) \n", "\\end{align}\n", "\n", "which gives a quadrature rule with weights $w_j := \\int_a^b\\ell_j(x)\\mathrm{d}x$ and nodes $x_j$. When the interpolation nodes are equispaced, this is a *Newton-Cotes* quadrature rule: \n", "\n", "***Newton-Cotes Quadrature:***\n", "\n", "In the following, we will consider the example of integrating $f(x) = \\tfrac1{2\\pi} ( x + x \\sin x)$ between $0$ and $2\\pi$. In this particular case, the integral is $\\pi-1$. We use this example so that we can analyse the error committed in the methods we will introduce. " ] }, { "cell_type": "code", "execution_count": 2, "id": "6c862bb5", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a, b = 0, 2π\n", "f = x -> x * ( 1 + sin(x) ) /( 2π )\n", "df_max = 1 + 1/(2π)\n", "d2f_max = 5.17\n", "d3f_max = 2π\n", "d4f_max = 6.19\n", "plot( f, a, b, title=L\"f(x) = \\frac{1}{2\\pi} (x + x\\sin x ) \", lw = 3, legend=false)" ] }, { "cell_type": "markdown", "id": "7c134dd0", "metadata": {}, "source": [ "## Rectangular rule\n", "\n", "The simplest rule of this kind is taking $X = \\{a\\}$ and considering the polynomial interpolation of degree $0$: $p_0(x) = f(a)$,\n", "\n", "\\begin{align}\n", " \\int_a^b f(x) \\approx \\int_a^b p_0(x) = (b-a) f(a).\n", "\\end{align}\n", "\n", "The rule has weights $\\{ b-a \\}$ and nodes $\\{ a \\}$. Notice that this rule is exact if $f$ is a polynomial of degree $0$.\n", "\n", "***Error Estimate.*** Since $p_0$ is a degree zero interpolating polynomial, we may apply the error bound we had for interpolation: \n", "\n", "\\begin{align}\n", " f(x) - p_0(x) = f'(\\xi_x) (x - a) \n", "\\end{align}\n", "\n", "for some $\\xi_x \\in [a, x]$ (in this case, this is just the mean value theorem). Therefore, integrating this over $[a,b]$, we have the bound\n", "\n", "\\begin{align}\n", " \\left| \\int_{a}^b \\big[ f(x) - p_0(x) \\big] \\mathrm{d}x \\right| \n", " %\n", " &\\leq \\| f'\\|_{L^\\infty([a,b])} \\int_a^b |x - a| \\mathrm{d}x \\nonumber\\\\\n", " &\\leq \\| f'\\|_{L^\\infty([a,b])} \\int_{0}^{b-a} t \\mathrm{d}x = \\| f'\\|_{L^\\infty([a,b])} \\frac{(b-a)^2}{2}.\n", "\\end{align}\n", "\n", "***Composite Rule.*** This error bound is only useful if $[a,b]$ is a small interval (or $f'$ is small). It therefore makes sense to split the interval $[a,b]$ into $n$ subintervals and consider the rectangular rule on each one: consider $x_j = a + j\\frac{b-a}{n}$ for $j = 0,\\dots,n$ and write\n", "\n", "\\begin{align}\n", " \\int_a^b f &= \\sum_{j=0}^{n-1} \\int_{x_j}^{x_{j+1}} f \\nonumber\\\\\n", " %\n", " &\\approx \\sum_{j=0}^{n-1} (x_{j+1} - x_j) f(x_j) \n", "\\end{align}\n", "\n", "This is a quadrature rule with weights $w_j = x_{j+1} - x_j = \\frac{b-a}{n}$ and nodes $x_j$ for $j = 0,\\dots,n-1$. Using the error estimate and summing over $j$, we obtain\n", "\n", "\\begin{align}\n", " \\left| \\int_a^b f - \\sum_{j=0}^{n-1} \\frac{b-a}{n} f(x_j) \\right| &\\leq \\| f'\\|_{L^\\infty([a,b])} \\sum_{j=0}^{n-1} \\frac12 \\Big(\\frac{b-a}{n}\\Big)^2 \\nonumber\\\\\n", " %\n", " &\\leq \\frac{\\| f'\\|_{L^\\infty([a,b])}}{2} \\frac{ (b-a)^2 }{ n } \\nonumber\\\\\n", "\\end{align}\n", "\n", "***Remark.*** Notice that this quadrature rule is exact if $f$ is a polynomial of degree $0$.\n", "\n", "***Numerics.*** We now test this numerically:" ] }, { "cell_type": "code", "execution_count": 3, "id": "906550fe", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "\u001b[36m\u001b[1m[ \u001b[22m\u001b[39m\u001b[36m\u001b[1mInfo: \u001b[22m\u001b[39mSaved animation to c:\\Users\\math5\\Math 5485\\Pictures\\Rectangular.gif\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Plots.AnimatedGif(\"c:\\\\Users\\\\math5\\\\Math 5485\\\\Pictures\\\\Rectangular.gif\")" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N = 50\n", "R = []\n", "\n", "anim = @animate for n ∈ 1:N\n", " \n", " h = (b-a)/n\n", " x = [a + j*(b-a)/n for j in 0:n]\n", " \n", " push!( R, sum( [ ( x[j+1] - x[j] ) * f( x[j] ) for j in 1:n] ) )\n", " \n", " plot( f, a, b, label=L\"x( 1 + \\sin(x) )/2π\", lw = 3)\n", "\n", " push!(x, b)\n", " for m ∈ 1:n \n", " plot!([x[m], x[m+1]], [f(x[m]), f(x[m])], lw=3, color=\"red\", primary=false)\n", " plot!([x[m], x[m]], [0, f(x[m])], lw=3, color=\"red\", primary=false)\n", " plot!([x[m+1], x[m+1]], [0, f(x[m])], lw=3, color=\"red\", primary=false)\n", " end\n", "\n", "end\n", "\n", "gif(anim, \"Pictures/Rectangular.gif\", fps = 1)" ] }, { "cell_type": "code", "execution_count": 4, "id": "84066be1", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scatter( abs.(R .- (π -1)), xaxis=:log, yaxis=:log, markersize=5, label=\"error\", title=\"Error estimate\" )\n", "plot!( (1/2)*df_max*(b-a)^2*(1:N).^(-1), linestyle=:dash,label=\"error bound\" )\n", "\n", "plot!( 4*(1:N).^(-1), linestyle=:dash, label=L\"4n^{-1}\" )" ] }, { "cell_type": "markdown", "id": "80921809", "metadata": {}, "source": [ "We can see here that the error decays with rate $O(n^{-1})$ and the error bound (proved above) is in fact an upper bound!" ] }, { "cell_type": "markdown", "id": "3a88fcdd", "metadata": {}, "source": [ "## Trapezoid Rule\n", "\n", "The next simplest rule of this kind is taking $X = \\{a, b\\}$ and considering the polynomial interpolation of degree $1$: $p_1(x) = \\frac{x-b}{a-b}f(a) + \\frac{x-a}{b-a} f(b)$,\n", "\n", "\\begin{align}\n", " \\int_a^b f(x) \\approx \\int_a^b p_1(x) = \\frac{b-a}{2} \\big( f(a) + f(b) \\big).\n", "\\end{align}\n", "\n", "(You can either go through the details in the integration, or draw a picture and calculate the area of the trapezium with points $(a,0), (a,f(a)), (b, f(b)), (b,0)$). This rule has weights $\\{ \\frac{b-a}{2}, \\frac{b-a}{2} \\}$ and nodes $\\{ a, b \\}$. Notice that this rule is exact if $f$ is a polynomial of degree $1$ (because $f$ agrees with $p_1$ in this case).\n", "\n", "***Error Estimate.*** Since $p_1$ is a degree zero interpolating polynomial, we may apply the error bound we had for interpolation: \n", "\n", "\\begin{align}\n", " f(x) - p_1(x) = \\frac{f''(\\xi_x)}{2} (x - a)(x-b) \n", "\\end{align}\n", "\n", "for some $\\xi_x \\in [a, b]$. Therefore, integrating this over $[a,b]$, we have the bound\n", "\n", "\\begin{align}\n", " \\left| \\int_{a}^b \\big[ f(x) - p_1(x) \\big] \\mathrm{d}x \\right| \n", " %\n", " &\\leq \\frac{\\| f''\\|_{L^\\infty([a,b])}}{2} \\int_a^b |(x - a)(x-b)| \\mathrm{d}x \\nonumber\\\\\n", " &\\leq \\frac{\\| f''\\|_{L^\\infty([a,b])}}{2} \\frac{(b-a)^3}{6}.\n", "\\end{align}\n", "\n", "***Composite Rule.*** This error bound is only useful if $[a,b]$ is a small interval (or $f''$ is small). It therefore makes sense to split the interval $[a,b]$ into $n$ subintervals and consider the trapezium rule on each one: consider $x_j = a + j\\frac{b-a}{n}$ for $j = 0,\\dots,n$ and write\n", "\n", "\\begin{align}\n", " \\int_a^b f &= \\sum_{j=0}^{n-1} \\int_{x_j}^{x_{j+1}} f \\nonumber\\\\\n", " %\n", " &\\approx \\sum_{j=0}^{n-1} \\frac{x_{j+1} - x_j}{2} \\big[ f(x_j) + f(x_{j+1}) \\big]\n", "\\end{align}\n", "\n", "This is a quadrature rule with weights $w_0 = w_n = \\frac{x_{j+1} - x_j}{2} = \\frac{b-a}{2n}$ and $w_j = \\frac{b-a}{n}$ for $j=1,\\dots,n-1$. Using the error estimate and summing over $j$, we obtain\n", "\n", "\\begin{align}\n", " \\left| \\int_a^b f - \\frac{b-a}{n} \\sum^\\prime_{0 \\leq j \\leq n} f(x_j) \\right| &\\leq \\| f''\\|_{L^\\infty([a,b])} \\sum_{j=0}^{n-1} \\frac1{12} \\left(\\frac{b-a}{n}\\right)^3 \\nonumber\\\\\n", " %\n", " &\\leq \\frac{\\| f''\\|_{L^\\infty([a,b])}}{12} \\frac{ (b-a)^3 }{ n^2 } \\nonumber\\\\\n", "\\end{align}\n", "\n", "where $\\sum^\\prime$ indicates that the first and last terms must be multiplied by $\\frac12$.\n", "\n", "***Remark.*** Notice that this quadrature rule is exact if $f$ is a polynomial of degree $1$.\n", "\n", "***Numerics.*** We now test this numerically:" ] }, { "cell_type": "code", "execution_count": 5, "id": "ca287e8e", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "\u001b[36m\u001b[1m[ \u001b[22m\u001b[39m\u001b[36m\u001b[1mInfo: \u001b[22m\u001b[39mSaved animation to c:\\Users\\math5\\Math 5485\\Pictures\\Trapezium.gif\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Plots.AnimatedGif(\"c:\\\\Users\\\\math5\\\\Math 5485\\\\Pictures\\\\Trapezium.gif\")" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N = 30\n", "T = []\n", "\n", "anim = @animate for n ∈ 1:N\n", " \n", " h = (b-a)/n\n", " x = [a + j*(b-a)/n for j in 0:n]\n", " \n", " push!( T, sum( [ (1/2)*( x[j+1] - x[j] ) * ( f(x[j]) + f(x[j+1]) ) for j in 1:n] ) )\n", " \n", " plot( f, a, b, label=L\"x( 1 + \\sin(x) )/2π\", lw = 3)\n", "\n", " push!(x, b)\n", " for m ∈ 1:n \n", " plot!([x[m], x[m+1]], [f(x[m]), f(x[m+1])], lw=3, color=\"red\", primary=false)\n", " plot!([x[m], x[m]], [0, f(x[m])], lw=3, color=\"red\", primary=false)\n", " plot!([x[m+1], x[m+1]], [0, f(x[m+1])], lw=3, color=\"red\", primary=false)\n", " end\n", "\n", "end\n", "\n", "gif(anim, \"Pictures/Trapezium.gif\", fps = 1)" ] }, { "cell_type": "code", "execution_count": 6, "id": "7ed782b8", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scatter( abs.(T .- (π -1)), xaxis=:log, yaxis=:log, markersize=5, label=\"error\" )\n", "plot!( (1/12)*d2f_max*(b-a)^3*(1:N).^(-2), linestyle=:dash, label=\"error bound\" )\n", "plot!( 5*(1:N).^(-2), linestyle=:dash, label=L\"5n^{-2}\" ) " ] }, { "cell_type": "markdown", "id": "9aaa4593", "metadata": {}, "source": [ "We can see here that the error decays with rate $O(n^{-2})$ and the error bound (proved above) is in fact an upper bound!" ] }, { "cell_type": "markdown", "id": "1e1f8504", "metadata": {}, "source": [ "## Simpson\n", "\n", "The next simplest rule of this kind is taking $X = \\{a, \\frac{a+b}{2}, b\\}$ and considering the polynomial interpolation $p_2$ of degree $2$: \n", "\n", "\\begin{align}\n", " \\int_a^b f(x) \\approx \\int_a^b p_2(x) = \\frac{b-a}{6} \\left[ f(a) + 4 f\\big(\\tfrac{a+b}{2}\\big) + f(b) \\right].\n", "\\end{align}\n", "\n", "Here, you can either write out the polynomial interpolation using the Lagrange polynomials and evaluate the weights $w_j = \\int_a^b \\ell_j$ explicitly, or you may notice that this rule is of the form $w_0 f(a) + w_1 f(\\tfrac{a+b}{2}) + w_2 f(b)$ and is exact if $f$ is a polynomial of degree $2$ (because $p_2 = f$ in this case). Therefore, in particular, we must have\n", "\n", "\\begin{align}\n", " \\int_a^b 1 = b-a &= w_0 + w_1 + w_2 \\nonumber\\\\\n", " \\int_a^b x = \\frac{b - a}{2} (a+b) &= w_0 a + w_1 \\frac{a+b}{2} + w_2 b \\nonumber\\\\\n", " \\int_a^b x^2 = \\frac{b-a}{3}(a^2 + ab + b^2) &= w_0 a^2 + w_1 \\left(\\frac{a+b}{2}\\right)^2 + w_2 b^2. \n", "\\end{align}\n", "\n", "And you may solve this system of equations for $w_0, w_1, w_2$ (I will leave out the details of this calculation).\n", "\n", "***Error Estimate.*** Since $p_2$ is a degree zero interpolating polynomial, we may apply the error bound we had for interpolation: \n", "\n", "\\begin{align}\n", " f(x) - p_2(x) = \\frac{f'''(\\xi_x)}{3!} (x - a)\\big( x - \\tfrac{a+b}{2} \\big) (x-b) \n", "\\end{align}\n", "\n", "for some $\\xi_x \\in [a, b]$. Therefore, integrating this over $[a,b]$, we have the bound\n", "\n", "\\begin{align}\n", " \\left| \\int_{a}^b \\big[ f(x) - p_2(x) \\big] \\mathrm{d}x \\right| \n", " %\n", " &\\leq \\frac{\\| f'''\\|_{L^\\infty([a,b])}}{6} \\int_a^b |(x - a)\\big( x - \\tfrac{a+b}{2} \\big) (x-b)| \\mathrm{d}x \\nonumber\\\\\n", " &\\leq \\frac{\\| f'''\\|_{L^\\infty([a,b])}}{6} \\frac{(b-a)^4}{36}.\n", "\\end{align}\n", "\n", "***Composite Rule.*** This error bound is only useful if $[a,b]$ is a small interval (or $f'''$ is small). It therefore makes sense to split the interval $[a,b]$ into subintervals and consider the Simpson rule on each one. We will now consider $n$ even and $x_j = a + j\\frac{b-a}{n}$ for $j = 0,\\dots,n$ and write\n", "\n", "\\begin{align}\n", " \\int_a^b f &= \\sum_{j=0 : \\text{ even}}^{n-2} \\int_{x_j}^{x_{j+2}} f \\nonumber\\\\\n", " %\n", " &\\approx \\sum_{j=0 : \\text{ even}}^{n-2} \\frac{x_{j+2} - x_j}{6} \\big[ f(x_j) + 4 f(x_{j+1}) + f(x_{j+2}) \\big] \\nonumber\\\\\n", " %\n", " &= \\frac{b-a}{3n} \\left[ f(x_0) + 4 f(x_{1}) + 2 f(x_{2}) + 4 f(x_3) + 2 f(x_{4}) + \\dots + 4 f(x_{n-1}) + f(x_n) \\right]\n", "\\end{align}\n", "\n", "(we have changed notation here slightly so that we are interpolating $f$ only at points in $X = \\{x_0, \\dots, x_n\\}$). This is a quadrature rule with weights $w_0 = w_n = \\frac{x_{n} - x_{n-2}}{6} = \\frac{b-a}{3 n}$, and $w_{2j+1} = \\frac{b-a}{3n} \\cdot 4$ and $w_{2j} = \\frac{b-a}{3n} \\cdot 2$ otherwise. Using the error estimate and summing over $j$, we obtain\n", "\n", "\\begin{align}\n", " \\left| \\int_a^b f - \\sum_{j = 0}^n w_j f(x_j) \\right| &\\leq \\| f'''\\|_{L^\\infty([a,b])} \\sum_{j=0 : \\text{ even}}^{n-2} \\frac1{6^3} \\left(2 \\cdot \\frac{b-a}{n}\\right)^4 \\nonumber\\\\\n", " %\n", " &\\leq \\frac{\\| f'''\\|_{L^\\infty([a,b])}}{27} \\frac{(b-a)^4}{n^3} \\nonumber\\\\\n", "\\end{align}\n", "\n", "\n", "***Remark.*** Notice that this quadrature rule is exact if $f$ is a polynomial of degree $2$.\n", "\n", "***Numerics.*** We now test this numerically:" ] }, { "cell_type": "code", "execution_count": 7, "id": "46e22bf3", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "\u001b[36m\u001b[1m[ \u001b[22m\u001b[39m\u001b[36m\u001b[1mInfo: \u001b[22m\u001b[39mSaved animation to c:\\Users\\math5\\Math 5485\\Pictures\\Simpson.gif\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Plots.AnimatedGif(\"c:\\\\Users\\\\math5\\\\Math 5485\\\\Pictures\\\\Simpson.gif\")" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N = 15\n", "S = []\n", "\n", "anim = @animate for n ∈ 1:N\n", " \n", " h = (b-a)/(2*n)\n", " x = [a + j*(b-a)/(2*n) for j in 0:(2*n)]\n", " \n", " p = 0\n", " for j in 0:2*n\n", " if j==0\n", " p = p + f( x[j+1] )\n", " elseif j==2*n \n", " p = p + f( x[j+1] )\n", " elseif mod(j,2)==0\n", " p = p + 2*f( x[j+1] )\n", " else\n", " p = p + 4*f( x[j+1] )\n", " end\n", " end\n", " push!( S, h*p/3 )\n", " \n", " plot( f, a, b, label=L\"x( 1 + \\sin(x) )/2π\", lw = 3)\n", "\n", " push!(x, b)\n", " for m ∈ 1:2n \n", "\n", " p = fit( [x[m], (x[m]+x[m+1])/2, x[m+1]], [f(x[m]), f((x[m]+x[m+1])/2), f(x[m+1])] )\n", "\n", " plot!( p, x[m], x[m+1], lw=3, color=\"red\", primary=false)\n", " plot!([x[m], x[m]], [0, f(x[m])], lw=3, color=\"red\", primary=false)\n", " plot!([x[m+1], x[m+1]], [0, f(x[m+1])], lw=3, color=\"red\", primary=false)\n", " end\n", "\n", "end\n", "\n", "gif(anim, \"Pictures/Simpson.gif\", fps = 1)" ] }, { "cell_type": "code", "execution_count": 8, "id": "305bc6bc", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scatter( abs.(S .- (π -1)), xaxis=:log, yaxis=:log, markersize=5, label=\"error\")\n", "plot!( (1/(27))*d3f_max*(b-a)^4*(1:N).^(-3), linestyle=:dash, color=:red, label=\"error bound\" )\n", "plot!( (1:N).^(-4), linestyle=:dash, label=L\"n^{-4}\" )\n", "# plot!( (1/2880)*d4f_max*(b-a)^5*(1:N).^(-4), linestyle=:dash, label=\"n^{-4}\" )" ] }, { "cell_type": "markdown", "id": "af695357", "metadata": {}, "source": [ "Therefore the error bound we have derived is an upper bound in this case! However, it seems that the error is $O(n^{-4})$ not $O(n^{-3})$ (which is what our error bound says). We will see now that we actually get an improved error bound:\n", "\n", "Recall that we are considering the (composite) Simpson rule: \n", "\n", "\\begin{align}\n", " \\int_a^b f &\\approx \\sum_{j=0 : \\text{ even}}^{n-2} \\frac{b-a}{3n} \\big[ f(x_j) + 4 f(x_{j+1}) + f(x_{j+2}) \\big]\n", "\\end{align}\n", "\n", "(with $n$ even). We have seen that the quadrature rule is exact when $f$ is a quadratic polynomial (degree 2). We will now see that it is also exact when $f$ is a cubic polynomial (degree 3).\n", "\n", "*Proof.* We may write $f(x) = \\alpha \\big( x - \\tfrac{a+b}{2} \\big)^3 + g(x)$ where $g$ is a quadratic polynomial. Since $t \\mapsto t^3$ is an odd function, we have \n", "\n", "\\begin{align}\n", " 0 = \\int_{a}^{b} \\big( x - \\tfrac{a+b}{2} \\big)^3 \\mathrm{d}x\n", " %\n", " = \\frac{b-a}{6} \\big[ \\big( a - \\tfrac{a+b}{2} \\big)^3 + 4 \\big( \\tfrac{a+b}{2} - \\tfrac{a+b}{2} \\big)^3 + \\big( b - \\tfrac{a+b}{2} \\big)^3 \\big]\n", "\\end{align}\n", "\n", "and thus \n", "\n", "\\begin{align}\n", " \\int_{a}^b f &= \\int_{a}^b \\Big[ \\alpha \\big( x - \\tfrac{a+b}{2} \\big)^3 + g(x) \\Big] \\mathrm{d}t \\nonumber\\\\\n", " %\n", " &= 0 + \\frac{b-a}{6} \\big[ g(a) + 4 g\\big(\\tfrac{a+b}{2}\\big) + g(b) \\big] \\nonumber\\\\\n", " %\n", " &= \\frac{b-a}{6} \\big[ f(a) + 4 f\\big(\\tfrac{a+b}{2}\\big) + f(b) \\big].\n", "\\end{align}\n", "\n", "As a result, Simpson's quadrature rule is exact for all cubic functions. The composite rule is the sum of Simpson's rule on each subinterval and so this is also exact on polynomials of degree $3$. $\\square$\n", "\n", "We now turn our attention to error estimates. Let $p$ be the (degree less than or equal to $3$) Hermite polynomial interpolation of $f$ on $\\{\\{ a, b, \\tfrac{a+b}2, \\tfrac{a+b}2 \\}\\}$. Then, using the errror estimates for Hermite interpolation, there exists $\\xi_x \\in [a,b]$ such that\n", "\n", "\\begin{align}\n", " \\left| \\int_a^b f - \\frac{b-a}{6} \\big[ f(a) + 4 f\\big(\\tfrac{a+b}{2}\\big) + f(b) \\big] \\right|\n", " %\n", " &= \\left| \\int_a^b f - \\frac{b-a}{6} \\big[ p(a) + 4 p\\big(\\tfrac{a+b}{2}\\big) + p(b) \\big] \\right| \\nonumber\\\\\n", " %\n", " &= \\left| \\int_a^b \\big( f - p \\big) \\right| \\nonumber\\\\\n", " %\n", " &= \\left| \\int_a^b \\frac{f''''(\\xi_x)}{4!} (x-a)\\big( x - \\tfrac{a+b}2 \\big)^2 (x-b) \\mathrm{d}x \\right| \\nonumber\\\\\n", " %\n", " &\\leq \\frac{\\| f'''' \\|_{L^\\infty([a,b])}}{4!} \\left| \\int_a^b (x-a)\\big( x - \\tfrac{a+b}2 \\big)^2 (x-b) \\mathrm{d}x \\right| \\nonumber\\\\\n", " %\n", " &= \\frac{\\| f'''' \\|_{L^\\infty([a,b])}}{4!} \\frac{(b-a)^5}{120}\n", "\\end{align}\n", "\n", "Here, we have used the fact that $x \\to (x-a)\\big( x - \\tfrac{a+b}2 \\big)^2 (x-b)$ doesn't change sign on $[a,b]$. Then, the error estimate for the composite rule is bounded above as follows:\n", "\n", "\\begin{align}\n", " &\\left| \\int_a^b f - \\frac{b-a}{3n} \\sum_{j=0 : \\text{ even}}^{n-2} \\big[ f(x_j) + 4 f(x_{j+1}) + f(x_{j+2}) \\big] \\right| \\nonumber\\\\\n", " %\n", " &\\leq \\sum_{j=0 : \\text{ even}}^{n-2} \\left| \\int_{x_j}^{x_{j+2}} f - \\frac{x_{j+2}-x_{j}}{6} \\big[ f(x_j) + 4 f\\big(x_{j+1}\\big) + f(x_{j+2}) \\big] \\right| \\nonumber\\\\\n", " %\n", " &\\leq \\frac{\\| f'''' \\|_{L^\\infty([a,b])}}{4!} \\frac{n}{2} \\frac{1}{120} \\left(2\\frac{b-a}{n}\\right)^5\n", " %\n", " \\leq \\frac{\\| f'''' \\|_{L^\\infty([a,b])}}{180} \\frac{(b-a)^5}{n^4}\n", "\\end{align}\n", "\n", "This gives us the correct rate:" ] }, { "cell_type": "code", "execution_count": 9, "id": "4be535c1", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scatter( abs.(S .- (π -1)), xaxis=:log, yaxis=:log, markersize=5, label=\"error\")\n", "plot!( (1/(27))*d3f_max*(b-a)^4*(1:N).^(-3), linestyle=:dash, color=:red, label=\"old error bound\" )\n", "plot!( (1:N).^(-4), linestyle=:dash, label=L\"n^{-4}\" )\n", "plot!( (1/180)*d4f_max*(b-a)^5*(1:N).^(-4), linestyle=:dash, label=\"new error bound\" )" ] }, { "cell_type": "markdown", "id": "c6394471", "metadata": {}, "source": [ "## Summary:\n", "\n", "1. Rectangular rule is given by $(b-a) f(a)$ and leads to a composite rule with error $C \\|f'\\|_{L^\\infty([a,b])} n^{-1}$,\n", "2. Trapezium rule is given by $\\frac{b-a}{2} \\left( f(a) + f(b) \\right)$ and leads to a composite rule with error $C \\|f''\\|_{L^\\infty([a,b])} n^{-2}$,\n", "3. Simpson rule is given by $\\frac{b-a}{6} \\left( f(a) + 4 f(\\tfrac{a+b}2) + f(b) \\right)$ and leads to a composite rule with error $C \\|f''''\\|_{L^\\infty([a,b])} n^{-4}$," ] } ], "metadata": { "kernelspec": { "display_name": "Julia 1.11.6", "language": "julia", "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.11.6" } }, "nbformat": 4, "nbformat_minor": 5 }